Skip to content

Conversation

gladjohn
Copy link
Contributor

@gladjohn gladjohn commented Jul 30, 2025

Fixes # Adds Managed Identity Pop package

Changes proposed in this request
This pull request adds support for attestation and key import functionality to the solution, primarily by introducing the new Microsoft.Identity.Client.MtlsPop project. It includes managed wrappers for native attestation operations, logging, error handling, and result representation, as well as updates to the solution and build pipeline to integrate and sign the new NuGet package.

Attestation and Key Import Functionality

  • Added new project Microsoft.Identity.Client.MtlsPop to the solution, providing managed wrappers for native attestation operations via AttestationClient, AttestationClientLib, and related types. This enables secure key attestation and import using native libraries. [1] [2] [3] [4] [5] [6]

Build and Solution Integration

  • Updated LibsAndSamples.sln to include Microsoft.Identity.Client.MtlsPop and KeyGuardAttestation projects, with full configuration mappings for build and platform targets. [1] [2] [3]
  • Modified the build pipeline (build/template-pack-and-sign-all-nugets.yaml) to pack and sign the new Microsoft.Identity.Client.MtlsPop assembly, ensuring it is included in release artifacts.

Miscellaneous

  • Removed CHANGELOG.md from the solution items in LibsAndSamples.sln.

Testing
integration tests

Performance impact
none

Documentation

  • All relevant documentation is updated.

{
// Preserve Win32 error code for diagnosis
int err = Marshal.GetLastWin32Error();
throw new Win32Exception(err, $"Unable to load {path}");
Copy link
Contributor Author

@gladjohn gladjohn Jul 30, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

need to remove throw, and silently fail, maybe with a warning. But using this for testing now.

@gladjohn gladjohn force-pushed the gladjohn/msal_msi_attestation branch 3 times, most recently from a5d3073 to 6d865aa Compare September 3, 2025 00:07
@gladjohn gladjohn changed the title [draft] adding a new new mtls pop package for msi related flows with a new mtls api mTLS Pop package for msi related flows with a new mtls api Sep 3, 2025
@gladjohn gladjohn marked this pull request as ready for review September 3, 2025 04:19
@gladjohn gladjohn requested a review from a team as a code owner September 3, 2025 04:19
@gladjohn gladjohn force-pushed the gladjohn/msal_msi_attestation branch from 6d865aa to 0128add Compare September 4, 2025 13:24
<!--This should be passed from the VSTS build-->
<MicrosoftIdentityClientVersion Condition="'$(MicrosoftIdentityClientVersion)' == ''">$(MsalInternalVersion)</MicrosoftIdentityClientVersion>
<!--This will generate AssemblyVersion, AssemblyFileVersion and AssemblyInformationVersion-->
<Version>$(MicrosoftIdentityClientVersion)</Version>
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Will this go as "-preview" ?

@@ -0,0 +1 @@

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

is this empty file needed?

@@ -1,4 +1,4 @@
// Copyright (c) Microsoft Corporation. All rights reserved.
// Copyright (c) Microsoft Corporation. All rights reserved.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

all the changes in this file are related to spacing, are these changes necessary?

This package contains binaries needed to use managed identity proof-of-possession (MTLS PoP) flows in applications using MSAL.NET.
</Description>
<PackageTags>Microsoft Authentication Library Managed Identity MSAL Proof-of-Possession</PackageTags>
<Product>Microsoft Authentication Library Broker</Product>
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

should the Product name here include 'Broker'?

Copy link
Contributor

@DharshanBJ DharshanBJ left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

lgtm

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants